// 获取元素
// 去登录
let goLogin = document.querySelector('.goLogin')
// 去注册
let goRegister = document.querySelector('.goRegister')
// 登录
let login = document.querySelector('.login')
let lusername = document.querySelector('.login [name="username"]')
let lpassword = document.querySelector('.login [name="password"]')
// 注册
let register = document.querySelector('.register')
let rusername = document.querySelector('.register [name="username"]')
let rpassword = document.querySelector('.register [name="password"]')


// 登录注册相互跳转
// 去注册
goRegister.addEventListener('click', function () {
    login.style.display = 'none'
    register.style.display = 'block'
})
// 去登录
goLogin.addEventListener('click', function () {
    login.style.display = 'block'
    register.style.display = 'none'
})

// 表单验证插件
function test() {
    return {
        fields: {
            username: { // 这里username是 input 的name属性值，表示对这个输入框进行验证
                validators: { // 添加真正的校验规则
                    notEmpty: {   //不能为空
                        message: '用户名不能为空.'// 如果不满足校验规则，则给出这句提示
                    },
                    stringLength: {   //检测长度
                        min: 2, // 最少2位
                        max: 15, // 最多15位
                        message: '用户名需要2~15个字符'
                    }
                }
            },
            password: {
                validators: {
                    notEmpty: {
                        message: '密码不能为空'
                    },
                    stringLength: {   //检测长度
                        min: 6,
                        max: 15,
                        message: '密码需要6~15个字符'
                    }
                }
            }
        }
    }
}
// 注册
$('.register form')
    .bootstrapValidator(test())
    .on('success.form.bv', function (e) {
        // 清除默认行为
        e.preventDefault()
        // 发请求
        let username = rusername.value
        let password = rpassword.value
        axios({
            url: '/api/register',
            method: 'post',
            data: { username, password }
        }).then(function (res) {
            if (res.data.code == 0) {
                toastr.success('注册成功')
                goLogin.click()
            } else if (res.data.code == 1) {
                toastr.error('注册失败，用户名已存在')
            }
        })
    })

// 登录
$('.login form')
    .bootstrapValidator(test())
    .on('success.form.bv', function (e) {
        // 清除默认行为
        e.preventDefault()
        let username = lusername.value
        let password = lpassword.value
        // 发请求
        axios({
            url: '/api/login',
            method: 'post',
            data: { username, password }
        }).then(function (res) {
            console.log(res);
            if (res.data.code == 0) {
                toastr.success('登录成功')
                location.href = './index.html'
                // 登录成功把token存到本地
                localStorage.setItem('my76_token', res.data.token)
            } else if (res.data.code == 1) {
                toastr.error('登录失败，用户名或密码错误')
            }
        })
    })